﻿import flash.external.*

//显示大批次僵尸出现时间点的旗子，目前最多4个
flag = [flag_0, flag_1, flag_2, flag_3]
/*保存大批次僵尸出现具体时间的列表，用于绘制旗子的位置，这个变量存在的理由是目前从python中调用swf中的函数只支持简单数据类型（如int或者string等）的参数，不支持列表等，所以这类需要列表参数的函数
调用在实现上分两个步骤进行，首先是设置某个列表变量的值，然后调用函数读取那个变量并刷新显示*/
check_point = [250, 500, 750, 1000]

var total_time:Number = 0;		//本局游戏的总时间
var max_x:Number = 1002;		//时间槽控件最右端的x坐标
var min_x:Number = 779;			//时间槽控件最左端的x坐标
var max_y:Number = 732;			//时间槽控件中表示未出现的大批次僵尸的旗子的y坐标
var min_y:Number = 717;			//时间槽控件中表示已经出现了的大批次僵尸的旗子的y坐标
var bar_length:Number = 20;		//时间槽控件的最大关键帧数

//此函数初始化时间槽，设置本局游戏的总时间并根据之前设置的大批次僵尸的出现时间点，设置旗子的x位置
function init_timebar(time:Number)
{
	//保存游戏总时间
	total_time = time;
	//时间槽初始化显示为第0帧
	barTime.value = 0;
	//根据游戏总时间计算出每秒钟时间槽控件上的像素位移
	var step:Number = (max_x - min_x) / time;
	//根据大批次僵尸的出现时间点，设置旗子的x坐标，因为是游戏刚开始，旗子的y坐标为未出现状态下的y坐标
	for (i = 0; i < 4; i++)
	{
		if (check_point[i] == 0)
		{
			flag[i]._visible = false;
		}
		else
		{
			flag[i]._visible = true;
			flag[i]._x = max_x - step * check_point[i];
			flag[i]._y = max_y;
		}
	}
}

//此函数根据传入的当前游戏进行时间刷新时间槽的进度显示
function flush_timebar(time:Number)
{
	barTime.value = bar_length * time / total_time;
}

//此函数把表示某个大批次僵尸的旗子的y坐标设置为已经出现过的状态
function raise_flag(_index:Number)
{
	flag[_index]._y = min_y;
}

//生成swf时的调式代码
init_timebar(1000);
flush_timebar(333);
